package homework.level01model03.homework04;

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Scanner;

public class StudentTest {
    /*
    * 使用 List 集合实现简易的学生信息管理系统，要求打印字符界面提示用户选择相应的功 能，根据用户输入的选择去实现增加、删除、修改、查找以及遍历所有学生信息的功能。

     其中学生的信息有：学号、姓名、年龄。 要求： 尽量将功能拆分为多个.java 文件。
    *
    * */
    //类加载动态数组







    public static void main(String[] args)  {
        String url="g:/homework05.txt";
        ArrayList<Student> al = StudentRead.read(url);

        Scanner sc = new Scanner(System.in);


        while (true) {

            // while(!s.equals("over")){
            //创建一个用户管理界面
            /*增加、删除、修改、查找以及遍历所有学生信息*/
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("----------用户管理界面-------------");
            System.out.print("1.增加    ");
            System.out.print("2.删除    ");
            System.out.print("3.修改    ");
            System.out.print("4.查找    ");
            System.out.println("5.遍历");
            System.out.println("输入要操作的功能：");


            //接受要操作的功能

            String s = sc.next();
            if ("over".equals(s)){
                StudentSave.save(al);
                sc.close();
                break;
            }

            //开始执行操作的功能
            try {
                switch (s) {
                    case "1":

                            StudentAdd.add(al);

                        break;
                    case "2":
                        StudentDelete.delete(al);
                        break;
                    case "3":
                        StudentUpdate.update(al);
                        break;
                    case "4":
                        StudentSelect.select(al);
                        break;
                    case "5":
                        //System.out.println("ok??");
                        StudentForEach.forEach(al);
                        break;







                }
            } catch (IDException e) {
                e.printStackTrace();
            } catch (AgeException e) {
                e.printStackTrace();
            }

        }




        sc.close();
    }


}
